package cn.wolfcode.cms.mapper;

import cn.wolfcode.cms.domain.Member;
import cn.wolfcode.cms.domain.Membernum;
import cn.wolfcode.cms.query.MemberQueryObject;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface MemberMapper {
    int deleteByPrimaryKey(Long id);

    int insert(Member record);

    Member selectByPrimaryKey(Long id);

    List<Member> selectAll();

    int updateByPrimaryKey(Member record);

    int queryForCount(MemberQueryObject qo);

    List<Member> queryForList(MemberQueryObject qo);

    List<Member> getMemberByExchangeId(Long id);

    void moveMember(@Param("memberId") Long memberId, @Param("groupId") Long groupId);

    int getTotalNum();

    int getBrithMenBer(@Param("month") int month, @Param("day") int day);

    int getBrithMonthMenBer(int month);

    Map<String, Object> getMemByKeyInfo(String keyInfo);

    Member getMenberByCardNum(Long card_num);

    void updateBalanceById(Member member);

    Member  getCardNumById(Long id);
}